# -*- coding: utf-8 -*-
"""
Created on Thu Aug 24 16:04:55 2023

@author: skunk69
"""

import json

chinese_name = u'心境障碍问卷'
english_name = 'Mood Disorder Questionnaire'
abbreviation = 'MDQ'
category = u'精神病学临床量表'

outline = u"""心境障碍也叫情绪障碍，包括双相情感障碍、躁狂发作、抑郁发作和持续性心境障碍。主要表现为显著而持久的情绪或情感变化。往往情绪忽高忽低，可伴有相应的认知和行为改变，部分患者可伴有明显的精神病性障碍。包括躁狂发作、抑郁发作、双相情感障碍和持续性心境障碍。双相情感障碍只是情感障碍的一个子类。双相情感障碍通常表现为两次以上的情绪和活动水平的显著变化，有时情绪高涨、活动增加，有时情绪低落、精力下降。缓解期可以是正常的，也可以有快速旋转，跳过缓解期。
双相情感障碍是指既有躁狂或轻躁狂发作，又有抑郁发作的一类心境障碍，躁狂发作时表现为情感高涨、言语增多、活动增多，抑郁发作时会出现情绪低落、思维缓慢、活动减少等症状。双相情感障碍Ⅰ型、Ⅱ型，主要有发病年龄、症状、病程、疗效、遗传等方面的区别。
（1）发病年龄：双相情感障碍Ⅱ型较双相情感障碍Ⅰ型起病年龄早；
（2）症状：双相情感障碍Ⅰ型以躁狂发作严重，而双相情感障碍Ⅱ型以抑郁发作严重、躁狂发作较轻；
（3）病程：双相情感障碍Ⅱ型障碍一般首次以抑郁发作为主，而且较双相情感障碍Ⅰ型的病程持续时间相对较长，发作更为频繁；
（4）疗效：在肇事、自杀等行为方面，两者之间的差异非常显著性，在疗效上也反映出双相情感障碍Ⅱ型较双相情感障碍Ⅰ型差；
（5）遗传：家族史中的阳性率，双相情感障碍Ⅱ型较双相情感障碍Ⅰ型为高，说明双相情感障碍Ⅱ型具有更明显的遗传倾向。
不同亚型双相情感障碍的发病由多种因素所致，特别是童年亲子关系、童年的经历以及童年时教养方式，对本病的影响非常重要，而负性生活事件和社会支持度是本病发病的直接诱发危险因素。
双相障碍的症状多样，难以识别，常被归类于其他问题。为此，R.Hirschfeld等人于2000年研究制定并发布了心境障碍问卷（MDQ）用以筛查双相障碍。"""

instruction = u""""""

with open('MDQ.txt','r',encoding='utf-8') as f:
    lines = f.readlines()
    f.close()

items = {}
items1 = {}
for num,line in enumerate(lines[1:14]):
    _,value = line.strip().split('）')
    items1[num+1] = value.strip()

key,value = lines[0].strip().split('.')
items[key] = [value.strip(),items1]
key,value = lines[-2].strip().split('.')
items[key] = value.strip()
key,value = lines[-1].strip().split('.')
items[key] = value.strip()

reverse_items = []
scales = []
scales_items = []
factors = []
factors_scales = []
rating = {
    1:[u'是',u'否'],
    2:[u'是',u'否'],
    3:[u'没有问题',u'轻度',u'中度',u'严重问题']
    }
score_rules = [1,0]

contents = {
    'instruction':instruction,
    'items':items,
    'reverse_items':reverse_items,
    'scales':scales,
    'scales_items':scales_items,
    'factors':factors,
    'factors_scales':factors_scales,
    'rating':rating,
    'score_rules':score_rules       
    }

implementation = u"""《心境障碍问卷》是一个自评量表。"""

reliability = u"""原作者对198例经SCID诊断为单相、双相I型和双相II型的情感障碍患者应用MDQ评定，获得了很好的区分效度。以具备7条以上症状判断双相障碍的敏感性是0.73（95%置信区间0.65~0.81），特异性是0.9（95%置信区间0.84~0.96）。
Twiss等在127例诊断为单相或双相障碍的英国患者样本测试中，对已存在7条以上症状，以及满足同时期发生和严重程度条件时，判断双相障碍的敏感性为0.76（双相I型为0.83，双相II型为0.67），特异性0.86。继而，Twiss以9条症状为阳性分界值而不考虑是否同时和严重程度，获得了更为理想的结果，筛查双相I型和双相II型的敏感性分别为0.9和0.88，特异性0.9。"""
validity = u"""杨海晨等用中文版MDQ评定284例双相障碍和134例单相抑郁患者。测得其内部一致性Cronbach α系数为0.77，8~14天重测相关系数为0.63（P<0.01）。13个条目的阳性回答率为32.4%~78.2%。ROC曲线分析获得区分单相抑郁和双相障碍的最佳分界值是7分，此时的敏感性和特异性分别为0.64和0.80。"""
measurements = {'reliability':reliability,'validity':validity}

interpretation = u"""根据原研究者的评判标准，13个筛查症状中，存在7条以上，并且有1个以上症状同时期发生，对生活造成“中度”或“严重”程度的影响，即可判别为双相障碍筛查阳性。"""

applications = u"""该量表的最大长处是简便，而且是患者自评，筛查结果的判断简单明了。"""

this_scale = {
    'chinese_name':chinese_name,
    'english_name':english_name,
    'abbreviation':abbreviation,
    'category':category,
    'outline':outline,
    'contents':contents,
    'implementation':implementation,
    'measurements':measurements,
    'interpretation':interpretation,
    'applications':applications    
    }

with open(abbreviation+'.json','w+',encoding='utf-8') as f:
    json.dump(this_scale,f,indent=2,ensure_ascii=False)